﻿// -------------------------------------------------------------------------
//    @FileName         :    NFTransMapMsg.h
//    @Author           :    Gao.Yi
//    @Date             :    2025-09-10
//    @Email			:    445267987@qq.com
//    @Module           :    NFTransMapMsg
//    @Desc             :
//
// -------------------------------------------------------------------------

#pragma once

#include "NFTransPlayerBase.h"
#include "proto_cs_team.nanopb.h"

namespace proto_ff
{
    class Proto_CSReq;
}

class NFTransMapMsg : public NF_OBJECT_TEMPLATE_MACRO(NFTransMapMsg, EOT_TRANS_ENTER_MAP, NFTransPlayerBase)
public:
    NFTransMapMsg();
    ~NFTransMapMsg() override;
    int CreateInit();
    int ResumeInit();
public:
    int HandleDispSvrRes(uint32_t nMsgId, const NFDataPackage& packet, uint32_t reqTransId, uint32_t rspTransId) override;
    int OnTransFinished(int iRunLogicRetCode) override;
public:
    int StartGCMapMsgReq( int iMapId, const proto_ff::Proto_CSReq& csReq, const proto_ff::ExtraLevelEntrancePara* pData);
    int ProcGCMapMsgRsp(uint32_t nMsgId, const NFDataPackage& packet, uint32_t reqTransId, uint32_t rspTransId);
public:
    int SetTransMap();
private:
    bool m_bTransMap;
    ExtraLevelEntrancePara m_stPara;
};
